package com.workcell.workdata.xthings.entity;

import com.baomidou.mybatisplus.annotation.FieldFill;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.fasterxml.jackson.annotation.JsonAlias;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import java.io.Serializable;
import java.time.LocalDateTime;

/**
 * 语音合成播放表
 *
 * @TableName t_base_voice_synthesis
 */
@TableName(value = "t_base_voice_synthesis")
@Data
@ApiModel(value = "BaseVoiceSynthesis", description = "语音合成播放表")
public class BaseVoiceSynthesis implements Serializable {
    /**
     * 语音合成播放ID
     */
    @TableId(type = IdType.ASSIGN_ID)
    @ApiModelProperty("语音合成播放ID")
    private String id;

    /**
     * 设备名称
     */
    @ApiModelProperty("设备名称")
    private String name;

    /**
     * 厂商名称
     */
    @ApiModelProperty("厂商名称")
    private String manufacturer;

    /**
     * 产品类型
     */
    @ApiModelProperty("产品类型")
    private String dcProductType;

    /**
     * 型号
     */
    @ApiModelProperty("型号")
    private String dcModel;

    /**
     * 状态:0草稿;1.使用中;2.已暂停
     */
    @ApiModelProperty("状态:0草稿;1.使用中;2.已暂停")
    private String state;

    /**
     * 创建人
     */
    @TableField(fill = FieldFill.INSERT)
    @ApiModelProperty("创建人")
    private String createBy;

    /**
     * 创建时间
     */
    @TableField(fill = FieldFill.INSERT)
    @ApiModelProperty("创建时间")
    private LocalDateTime createTime;

    /**
     * 更新人
     */
    @TableField(fill = FieldFill.INSERT_UPDATE)
    @ApiModelProperty("更新人")
    private String updateBy;

    /**
     * 更新时间
     */
    @TableField(fill = FieldFill.INSERT_UPDATE)
    @ApiModelProperty("更新时间")
    private LocalDateTime updateTime;

    /**
     * 厂商编码（厂商ID）
     */
    @JsonAlias("deviceManufacturer")
    @ApiModelProperty("厂商编码（厂商ID）")
    private String manufacturerCode;

    @TableField(exist = false)
    @ApiModelProperty(value="厂商编码（厂商ID）")
    private String deviceManufacturer;

    /**
     * 厂商简称
     */
    @ApiModelProperty("厂商简称")
    private String manufacturerShortName;

    /**
     * 厂商全称
     */
    @ApiModelProperty("厂商全称")
    private String manufacturerFullName;

    @TableField(exist = false)
    private static final long serialVersionUID = 1L;
}
